\section{Module \ocamlinlinecode{Functor}}\label{module-Functor}%
\label{module-Functor-module-type-S}\ocamlcodefragment{\ocamltag{keyword}{module} \ocamltag{keyword}{type} \hyperref[module-Functor-module-type-S]{\ocamlinlinecode{S}}}\ocamlcodefragment{ = \ocamltag{keyword}{sig}}\begin{ocamlindent}\label{module-Functor-module-type-S-type-t}\ocamlcodefragment{\ocamltag{keyword}{type} t}\\
\end{ocamlindent}%
\ocamlcodefragment{\ocamltag{keyword}{end}}\\
\label{module-Functor-module-type-S1}\ocamlcodefragment{\ocamltag{keyword}{module} \ocamltag{keyword}{type} \hyperref[module-Functor-module-type-S1]{\ocamlinlinecode{S1}}}\ocamlcodefragment{ = \ocamltag{keyword}{sig}}\begin{ocamlindent}\subsubsection{Parameters\label{parameters}}%
\label{module-Functor-module-type-S1-argument-1-_}\ocamlcodefragment{\ocamltag{keyword}{module} \hyperref[module-Functor-module-type-S1-argument-1-_]{\ocamlinlinecode{\_\allowbreak{}}}}\ocamlcodefragment{ : \ocamltag{keyword}{sig}}\begin{ocamlindent}\label{module-Functor-module-type-S1-argument-1-_-type-t}\ocamlcodefragment{\ocamltag{keyword}{type} t}\\
\end{ocamlindent}%
\ocamlcodefragment{\ocamltag{keyword}{end}}\\
\subsubsection{Signature\label{signature}}%
\label{module-Functor-module-type-S1-type-t}\ocamlcodefragment{\ocamltag{keyword}{type} t}\\
\end{ocamlindent}%
\ocamlcodefragment{\ocamltag{keyword}{end}}\\
\label{module-Functor-module-F1}\ocamlcodefragment{\ocamltag{keyword}{module} \hyperref[module-Functor-module-F1]{\ocamlinlinecode{F1}}}\ocamlcodefragment{ (\hyperref[module-Functor-module-F1-argument-1-Arg]{\ocamlinlinecode{Arg}} : \hyperref[module-Functor-module-type-S]{\ocamlinlinecode{S}}) : \hyperref[module-Functor-module-type-S]{\ocamlinlinecode{S}}}\\
\label{module-Functor-module-F2}\ocamlcodefragment{\ocamltag{keyword}{module} \hyperref[module-Functor-module-F2]{\ocamlinlinecode{F2}}}\ocamlcodefragment{ (\hyperref[module-Functor-module-F2-argument-1-Arg]{\ocamlinlinecode{Arg}} : \hyperref[module-Functor-module-type-S]{\ocamlinlinecode{S}}) : \hyperref[module-Functor-module-type-S]{\ocamlinlinecode{S}} \ocamltag{keyword}{with} \ocamltag{keyword}{type} \hyperref[module-Functor-module-type-S-type-t]{\ocamlinlinecode{t}} = \hyperref[module-Functor-module-F2-argument-1-Arg-type-t]{\ocamlinlinecode{Arg.\allowbreak{}t}}}\\
\label{module-Functor-module-F3}\ocamlcodefragment{\ocamltag{keyword}{module} \hyperref[module-Functor-module-F3]{\ocamlinlinecode{F3}}}\ocamlcodefragment{ (\hyperref[module-Functor-module-F3-argument-1-Arg]{\ocamlinlinecode{Arg}} : \hyperref[module-Functor-module-type-S]{\ocamlinlinecode{S}}) : \ocamltag{keyword}{sig} .\allowbreak{}.\allowbreak{}.\allowbreak{} \ocamltag{keyword}{end}}\\
\label{module-Functor-module-F4}\ocamlcodefragment{\ocamltag{keyword}{module} \hyperref[module-Functor-module-F4]{\ocamlinlinecode{F4}}}\ocamlcodefragment{ (\hyperref[module-Functor-module-F4-argument-1-Arg]{\ocamlinlinecode{Arg}} : \hyperref[module-Functor-module-type-S]{\ocamlinlinecode{S}}) : \hyperref[module-Functor-module-type-S]{\ocamlinlinecode{S}}}\\
\label{module-Functor-module-F5}\ocamlcodefragment{\ocamltag{keyword}{module} \hyperref[module-Functor-module-F5]{\ocamlinlinecode{F5}}}\ocamlcodefragment{ () : \hyperref[module-Functor-module-type-S]{\ocamlinlinecode{S}}}\\

\input{Functor.F1.tex}
\input{Functor.F2.tex}
\input{Functor.F3.tex}
\input{Functor.F4.tex}
\input{Functor.F5.tex}
